package ipt.pru;



import ipt.comparator.OrdenarPersonaPorId;

import java.util.Arrays;
import java.util.Collections;
import java.util.Comparator;
import java.util.Iterator;
import java.util.List;
import java.util.NavigableMap;
import java.util.Set;
import java.util.TreeSet;

 public class Persona implements Comparable<Persona> {

	
	private int idPersona;
	 private String nombre;
	 private java.util.Date fechaNacimiento;

	 public Persona() {
	 }

	 public Persona(int idPersona, String nombre) {
	 this.idPersona = idPersona;
	 this.nombre = nombre;

	 }

	 public int getIdPersona() {
	 return idPersona;
	 }

	 public void setIdPersona(int idPersona) {
	 this.idPersona = idPersona;
	 }

	 public String getNombre() {
	 return nombre;
	 }

	 public void setNombre(String nombre) {
	 this.nombre = nombre;
	 }

	 public java.util.Date getFechaNacimiento() {
	 return fechaNacimiento;
	 }

	 public void setFechaNacimiento(java.util.Date fechaNacimiento) {
	 this.fechaNacimiento = fechaNacimiento;
	 }

	
	 
	public int compareTo( Persona o ) {
		
		return this.nombre.compareTo(o.getNombre() );
	}
	
	
	
	
	
	public static void main(String[] args) {
		

	
			 //Set personas = new TreeSet( new OrdenarPersonaPorId() );
			Set personas = new TreeSet( );
			 personas.add(new Persona(1, "Mario"));
			 personas.add(new Persona(2, "Fernando"));
			 personas.add(new Persona(3, "Omar"));
			 personas.add(new Persona(4, "Juana"));
		
			 //System.out.println("conjunto ordenado de personas: "+personas);
			 
			 Iterator<Persona> it = personas.iterator();
			 while ( it.hasNext() ){
				 Persona p = it.next();
				 System.out.println( "[" +p.getIdPersona() + "] "+ p.getNombre() );
			 }
			 
			 
			//List otrasPersonas = Arrays.asList(new Persona(4, "Juana"),	new Persona(2, "Fernando"),	new Persona(1, "Mario"), new Persona(3, "Omar"));					
			//Collections.sort(otrasPersonas, new OrdenarPersonaPorId());
			
			
			
			//System.out.println("lista de personas ordenadas por ID:" + otrasPersonas);
			 
			 
			 
			 
	}			 
	
	
	
	}